#include <boost/math/special_functions/bessel.hpp>
#include <iostream>

int main()
{
	try{
		for (int i = -5; i <= +5; i++){
			double result = boost::math::cyl_bessel_i(1,i);
			std::cout << "cyl_bessel_i(1," << i << ") = " << result << std::endl;
		}
		for (int i = -5; i <= +5; i++){
			double result = boost::math::cyl_bessel_j(1,i);
			std::cout << "cyl_bessel_j(1," << i << ") = " << result << std::endl;
		}
		for (int i = 1; i <= +5; i++){
			double result = boost::math::cyl_bessel_k(1,i);
			std::cout << "cyl_bessel_k(1," << i << ") = " << result << std::endl;
		}
		for (int i = 1; i <= +5; i++){
			double result = boost::math::cyl_neumann(1,i);
			std::cout << "cyl_neumann(1," << i << ") = " << result << std::endl;
		}
			for (int i = 1; i <= +5; i++){
			double result = boost::math::sph_bessel(1,i);
			std::cout << "sph_bessel(1," << i << ") = " << result << std::endl;
		}
		for (int i = 1; i <= +5; i++){
			double result = boost::math::sph_neumann(1,i);
			std::cout << "sph_neumann(1," << i << ") = " << result << std::endl;
		}
	}
	catch(std::exception& e){
		std::cout << "caught exception: " << e.what() << std::endl;
	}
}